#ifndef CLASSIFICATION_HPP
#define CLASSIFICATION_HPP
#include "caffe/caffe.hpp"
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <algorithm>
#include <iosfwd>
#include <memory>
#include <string>
#include <utility>
#include <vector>
#include <sstream>

using namespace caffe;
using namespace std;
using namespace cv;

class Classifier {
 public:
  Classifier();//构造函数进行对象初始化

  int Classify(const Mat& img);//Classify函数进行网络前传获得输入对应于各类的概率

 private:
  void Init_Img(const Mat& img, std::vector<Mat>* input_channels);//将输入图片放入网络的输入blob
 
 private:
  shared_ptr<Net<float> > net_;
  Size input_geometry_;
  int num_channels_;
  Mat mean_;
};
#endif

